package com.yfp.machine.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;

import java.io.Serializable;
import java.util.Date;

/**
 * (ApkVersion)实体类
 *
 * 
 * @since 2023-12-14 15:00:35
 */
@Schema(title = "apk版本")
public class ApkVersion implements Serializable {
    private static final long serialVersionUID = -98907795958976320L;
    /**
     * 版本号
     */
    @Schema(title = "版本号")
    private String versionNo;
    /**
     * 版本名称
     */
    @Schema(title = "版本名称")
    @NotNull(message = "版本名称不能为空")
    private String versionName;
    /**
     * 设备类型（1：二代机 2：三代机）
     */
    @Schema(title = "设备类型（1：二代机 2：三代机）")
    @NotNull(message = "设备类型不能为空")
    private Integer machineType;
    /**
     * 安装包url
     */
    @Schema(title = "安装包url")
    @NotNull(message = "安装包url不能为空")
    private String url;
    /**
     * 安装包大小
     */
    @Schema(title = "安装包大小")
    private String size;
    /**
     * 推送状态（0：未推送 1：已推送）
     */
    @Schema(title = "推送状态（0：未推送 1：已推送）")
    private Integer pushStatus;
    /**
     * 推送时间
     */
    @Schema(title = "推送时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date pushTime;
    /**
     * 推送人
     */
    @Schema(title = "推送人")
    private String pushOper;
    /**
     * 创建时间
     */
    @Schema(title = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    /**
     * 更新时间
     */
    @Schema(title = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    /**
     * 是否删除
     */
    @Schema(title = "是否删除")
    private Boolean isDelete;
    /**
     * 内部版本号（最新版本号必须值必须最大）
     */
    @Schema(title = "内部版本号（最新版本号必须值必须最大）")
    @NotNull(message = "内部版本号不能为空")
    private Integer innerVersionNo;


    public String getVersionNo() {
        return versionNo;
    }

    public void setVersionNo(String versionNo) {
        this.versionNo = versionNo;
    }

    public String getVersionName() {
        return versionName;
    }

    public void setVersionName(String versionName) {
        this.versionName = versionName;
    }

    public Integer getMachineType() {
        return machineType;
    }

    public void setMachineType(Integer machineType) {
        this.machineType = machineType;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getSize() {
        return size;
    }

    public void setSize(String size) {
        this.size = size;
    }

    public Integer getPushStatus() {
        return pushStatus;
    }

    public void setPushStatus(Integer pushStatus) {
        this.pushStatus = pushStatus;
    }

    public Date getPushTime() {
        return pushTime;
    }

    public void setPushTime(Date pushTime) {
        this.pushTime = pushTime;
    }

    public String getPushOper() {
        return pushOper;
    }

    public void setPushOper(String pushOper) {
        this.pushOper = pushOper;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Boolean getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Boolean isDelete) {
        this.isDelete = isDelete;
    }

    public Integer getInnerVersionNo() {
        return innerVersionNo;
    }

    public void setInnerVersionNo(Integer innerVersionNo) {
        this.innerVersionNo = innerVersionNo;
    }

}

